/******************************************************************************
** 公司名称：天津柯迪斯科技有限公司
** 版权信息：
** 文件名称： App_MainTask.h
** 模块名称： KD986_New主任务模块
** 版 本 号： V1.0
** 作    者： 蒲磊
** 
** 修改记录： 版本     修改人      时间         修改内容
**
******************************************************************************/
#ifndef __APP_MAINTASK_H_
#define __APP_MAINTASK_H_

/******************************************************************************
* 头文件
******************************************************************************/
#include "bsp.h"
/******************************************************************************
* 宏定义 ('#define')                             
******************************************************************************/
/*自定义窗体消息*/

/******************************************************************************
* 类型定义 ('typedef')                                         
******************************************************************************/
 
/******************************************************************************
* 全局变量声明 
******************************************************************************/

extern uint8_t		gucLamp;
extern int8_t		gcPas;
extern uint8_t		gucTurnLeftLamp;
extern uint8_t		gucTurnRightLamp;
/******************************************************************************
* 函数声明 
******************************************************************************/
void vPowerOff(void);
void vPower_Loop(void);
void vExit_Setting_With_Saving(void);
void vExit_Setting_Without_Saving(void);
void vEnter_Setting(void);
void vFactory_Restore(void);
void vResetAutoExitSettingCnt(void);
void vResetAutoPowerOffCnt(void);
uint32_t ulVoltage_Smoothing(uint32_t ADCValue,uint32_t Voltage_Ref);
uint32_t ulGet_Sys_Voltage(void);
void vInit_Parameter(void);
uint16_t vVoltage_Calibration(void);
uint16_t vPhotoDiode_Calibration(void);
void vDateTime_Calibration(uint8_t Year,uint8_t Month,uint8_t Day,uint8_t Hour,uint8_t Min,uint8_t Sec);
void vClear_ODO(void);
void vToggle_Lamp_Manual(void);
void vPowerButton_Released(void);
uint8_t ucGet_Battery_Soc(uint32_t Volt);
uint16_t usGet_Wheel_Size(uint8_t WheelIndex);
uint8_t ucGet_Backlight_Precent(uint8_t Backlight_Level);
uint8_t ucGet_Eur_Standard_ErrCode(void);
void vSet_Eur_Standard_ErrCode(uint8_t ErrCode);
uint8_t ucGet_Is_InSetting(void);
uint8_t uc_Get_Wheel_Index(uint16_t Wheel);
void vUSB_state(void);
#endif
